﻿// --- START OF FILE HvacLoadSpaceTypeManager.cs ---

using Autodesk.Revit.DB;
using Autodesk.Revit.DB.Analysis;
using Autodesk.Revit.DB.Mechanical; // Space
using Autodesk.Revit.UI; // TaskDialog
using System;
using System.Collections.Generic;
using System.Diagnostics;
using System.Linq;
using System.Text;
using System.Windows; // MessageBox (可选，或返回结果让 VM 处理)

namespace RevitProject.SpaceManager.Core // 或者 .Helper
{
    /// <summary>
    /// 包含删除结果的数据传输对象。
    /// </summary>
    public class DeleteResult
    {
        public bool RevitSuccess { get; set; } = false;
        public bool JsonSuccess { get; set; } = false;
        public bool VmUpdateSuccess { get; set; } = false;
        public List<ElementId> SpacesToReassign { get; set; } = new List<ElementId>();
        public string ErrorMessage { get; set; }
        public bool OverallSuccess => RevitSuccess && JsonSuccess && VmUpdateSuccess;
        public int DeletedCount { get; set; } = 0;
        public int SkippedCount { get; set; } = 0; // 因正在使用而跳过
        public int ErrorCount { get; set; } = 0;   // 删除过程中出错
        public StringBuilder Log { get; } = new StringBuilder();

        public List<ElementId> SuccessfullyDeletedIds { get; set; } = new List<ElementId>(); 
        

        public static implicit operator DeleteResult(bool v)
        {
            throw new NotImplementedException();
        }
    }

}
// --- END OF FILE HvacLoadSpaceTypeManager.cs ---